package com.jiangyao.model.dto.backend;

import com.jiangyao.model.dto.BaseDTO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;

/**
 * 班级学期课程DTO
 *
 * @author: yangyongchuan
 * @create: 2020年08月25日 23:25
 */
@ApiModel("班级学期课程DTO")
@Data
public class ClassSemesterSubjectDTO implements BaseDTO {

	private static final long serialVersionUID = 4035009068533596004L;
	
	/**
	 * 学期课程ID
	 */
	@ApiModelProperty(value = "学期课程ID")
	private Integer clsubId;

	/**
	 * 类型 1课堂教学 2线上课程
	 */
	@ApiModelProperty(value = "类型 1课堂教学 2线上课程")
	@NotNull(message = "类型不能为空", groups = {Edit.class})
	private Integer type;

	/**
	 * 课程ID
	 */
	@ApiModelProperty(value = "课程ID")
	private Integer subjectId;

	/**
	 * 课程、科目名称（别名）
	 */
	@ApiModelProperty(value = "课程、科目名称（别名）")
	@NotNull(message = "课程、科目名称不能为空", groups = {Edit.class})
	@NotEmpty(message = "课程、科目名称不能为空", groups = {Edit.class})
	private String subjectName;

	/**
	 * 学习状态 1待学习 2学习中 3已学习
	 */
	@ApiModelProperty(value = "学习状态 1待学习 2学习中 3已学习")
	private Integer learnStatus = 1;

	/**
	 * 排序
	 */
	@ApiModelProperty(value = "排序")
	@NotNull(message = "排序不能为空", groups = {Edit.class})
	private Integer sortOrder = 0;
}
